home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / lamstex / inputs / book.st < prev    next >
Text File  |  1991-09-06  |  15KB  |  506 lines

  1. % BOOK.ST  VERSION 2.0
  2. % COPYRIGHT (C) 1989, 1990, 1991 BY THE TEXPLORATORS CORPORATION
  3. % ALL RIGHTS RESERVED
  4.  
  5. % IF THIS FILE IS MODIFIED IN ANY WAY, IT SHOULD BE GIVEN A DIFFERENT NAME !
  6.  
  7. \catcode`\@=11
  8. \ifx\bookst@\relax\catcode`\@=\active\endinput\else\let\bookst@\relax\fi
  9. \let\alloc@\alloc@@
  10.  
  11. \vbadness=10000
  12.  
  13. \hsize=29pc
  14. \vsize=40pc
  15. \normallineskiplimit=1pt
  16. \parindent=10pt
  17. \advance\hoffset 42pt
  18. \advance\voffset 90pt
  19.  
  20. \def\makeheadline{\hbox{\botsmash{\line{\vbox to8.5pt{}\the\headline}}}%
  21.  \nointerlineskip\vskip20pt}
  22. \def\makefootline{\baselineskip=2.5pc\relax\line{\the\footline}}
  23.  
  24. \let\title\undefined
  25. \let\author\undefined
  26. \let\affil\undefined
  27. \let\endaffil\undefined
  28. \let\date\undefined
  29. \let\makebib\undefined
  30.  
  31. \font@\ninerm=cmr9
  32. \font@\eightrm=cmr8
  33. \font@\sixrm=cmr6
  34. \font@\eighti=cmmi8   \skewchar\eighti='177
  35. \font@\sixi=cmmi6     \skewchar\sixi='177
  36. \font@\ninesy=cmsy9   \skewchar\ninesy='60
  37. \font@\eightsy=cmsy8  \skewchar\eightsy='60
  38. \font@\sixsy=cmsy6    \skewchar\sixsy='60
  39. \font@\eightbf=cmbx8
  40. \font@\sixbf=cmbx6
  41. \font@\eightit=cmti8
  42. \font@\eightsl=cmsl8
  43. \font@\eighttt=cmtt8
  44.  
  45. \ifmsamloaded@
  46.  \font@\eightmsa=msam8
  47.  \font@\sixmsa=msam6
  48. \fi
  49.  
  50. \ifmsbmloaded@
  51.  \font@\eightmsb=msbm8
  52.  \font@\sixmsb=msbm6
  53. \fi
  54.  
  55. \ifeufmloaded@
  56.  \font@\eighteufm=eufm8
  57.  \font@\sixeufm=eufm6
  58. \fi
  59.  
  60. \ifcmmibloaded@
  61.  \font@\eightcmmib=cmmib8 \skewchar\eightcmmib='177
  62.  \font@\sixcmmib=cmmib6 \skewchar\sixcmmib='177
  63. \fi
  64.  
  65. \ifcmbsyloaded@
  66.  \font@\eightcmbsy=cmbsy8 \skewchar\eightcmbsy='60
  67.  \font@\sixcmbsy=cmbsy6 \skewchar\sixcmbsy='60
  68. \fi
  69.  
  70. \newskip\ttglue@
  71.  
  72. \def\tenpoint{\def\pointsize@{10}%
  73.  \normalbaselineskip12\p@
  74.  \abovedisplayskip12\p@ plus3\p@ minus9\p@
  75.  \belowdisplayskip12\p@ plus3\p@ minus9\p@
  76.  \abovedisplayshortskip\z@ plus3\p@
  77.  \belowdisplayshortskip7\p@ plus3\p@ minus4\p@
  78.  \textonlyfont@\rm\tenrm
  79.  \textonlyfont@\it\tenit
  80.  \textonlyfont@\sl\tensl
  81.  \textonlyfont@\bf\tenbf
  82.  \ifsyntax@\def\big##1{{\hbox{$\left##1\right.$}}}\else
  83.   \let\big\tenbig@
  84.   \textfont\z@\tenrm  \scriptfont\z@\sevenrm  \scriptscriptfont\z@\fiverm
  85.   \textfont\@ne\teni  \scriptfont\@ne\seveni  \scriptscriptfont\@ne\fivei
  86.   \textfont\tw@\tensy \scriptfont\tw@\sevensy \scriptscriptfont\tw@\fivesy
  87.   \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  88.   \textfont\itfam\tenit
  89.   \textfont\slfam\tensl
  90.   \textfont\bffam\tenbf \scriptfont\bffam\sevenbf
  91.    \scriptscriptfont\bffam\fivebf
  92.   \ifmsamloaded@
  93.    \textfont\msafam\tenmsa \scriptfont\msafam\sevenmsa
  94.     \scriptscriptfont\msafam\fivemsa
  95.   \fi
  96.   \ifmsbmloaded@
  97.    \textfont\msbfam\tenmsb \scriptfont\msbfam\sevenmsb
  98.     \scriptscriptfont\msbfam\fivemsb
  99.   \fi
  100.   \ifeufmloaded@
  101.    \textfont\eufmfam\teneufm \scriptfont\eufmfam\seveneufm
  102.     \scriptscriptfont\eufmfam\fiveeufm
  103.   \fi
  104.   \ifcmmibloaded@
  105.    \textfont\cmmibfam\tencmmib \scriptfont\cmmibfam\sevencmmib
  106.     \scriptscriptfont\cmmibfam\fivecmmib
  107.   \fi
  108.   \ifcmbsyloaded@
  109.    \textfont\cmbsyfam\tencmbsy \scriptfont\cmbsyfam\sevencmbsy
  110.     \scriptscriptfont\cmbsyfam\fivecmbsy
  111.   \fi
  112.  \fi
  113.  \let\tt\tentt
  114.  \tt\ttglue@.5emminus.15em
  115.  \setbox\strutbox\hbox{\vrule\height8.5\p@\depth3.5\p@\width\z@}%
  116.  \setbox\strutbox@\hbox{\vrule\height8\p@\depth3\p@\width\z@}%
  117.  \ex@.2326ex\normalbaselines\ifmmode\else\rm\fi}
  118.  
  119. \def\tenbig@#1{{\hbox{$\left#1\vbox to8.5\p@{}\right.\n@space$}}}
  120.  
  121. \tenpoint
  122.  
  123. \def\eightpoint{\def\pointsize@{8}%
  124.  \normalbaselineskip10\p@
  125.  \abovedisplayskip10\p@ plus2.4\p@ minus7.2\p@
  126.  \belowdisplayskip10\p@ plus2.4\p@ minus7.2\p@
  127.  \abovedisplayshortskip\z@ plus2.4\p@
  128.  \belowdisplayshortskip5.6\p@ plus2.4\p@ minus3.2\p@
  129.  \textonlyfont@\rm\eightrm
  130.  \textonlyfont@\it\eightit
  131.  \textonlyfont@\sl\eightsl
  132.  \textonlyfont@\bf\eightbf
  133.  \ifsyntax@\def\big##1{{\hbox{$\left##1\right.$}}}\else
  134.   \let\big\eightbig@
  135.   \textfont\z@\eightrm \scriptfont\z@\sixrm  \scriptscriptfont\z@\fiverm
  136.   \textfont\@ne\eighti \scriptfont\@ne\sixi  \scriptscriptfont\@ne\fivei
  137.   \textfont\tw@\eightsy \scriptfont\tw@\sixsy \scriptscriptfont\tw@\fivesy
  138.   \textfont\thr@@\tenex \scriptfont\thr@@\tenex \scriptscriptfont\thr@@\tenex
  139.   \textfont\itfam\eightit
  140.   \textfont\slfam\eightsl
  141.   \textfont\bffam\eightbf \scriptfont\bffam\sixbf
  142.    \scriptscriptfont\bffam\fivebf
  143.   \ifmsamloaded@
  144.    \textfont\msafam\eightmsa \scriptfont\msafam\sixmsa
  145.     \scriptscriptfont\msafam\fivemsa
  146.   \fi
  147.   \ifmsbmloaded@
  148.    \textfont\msbfam\eightmsb \scriptfont\msbfam\sixmsb
  149.     \scriptscriptfont\msbfam\fivemsb
  150.   \fi
  151.   \ifeufmloaded@
  152.    \textfont\eufmfam\eighteufm \scriptfont\eufmfam\sixeufm
  153.     \scriptscriptfont\eufmfam\fiveeufm
  154.   \fi
  155.   \ifcmmibloaded@
  156.    \textfont\cmmibfam\eightcmmib \scriptfont\cmmibfam\sixcmmib
  157.     \scriptscriptfont\cmmibfam\fivecmmib
  158.   \fi
  159.   \ifcmbsyloaded@
  160.    \textfont\cmbsyfam\eightcmbsy \scriptfont\cmbsyfam\sixcmbsy
  161.     \scriptscriptfont\cmbsyfam\fivecmbsy
  162.   \fi
  163.  \fi
  164.  \let\tt\eighttt
  165.  \tt\ttglue@.4emminus.12em
  166.  \setbox\strutbox\hbox{\vrule\height7\p@\depth3\p@\width\z@}%
  167.  \setbox\strutbox@\hbox{\vrule\height6.5\p@\depth2.5\p@\width\z@}%
  168.  \ex@.2326ex\normalbaselines\ifmmode\else\rm\fi}
  169.  
  170. \def\eightbig@#1{{\hbox{$\textfont\z@\ninerm\textfont\tw@\ninesy
  171.  \left#1\vbox to6.5\p@{}\right.\n@space$}}}
  172.  
  173. {\catcode` =\active
  174. \gdef\litcodes@@{\def {\allowbreak\hskip\ttglue@}}}
  175.  
  176. \def\LamSTeX{L\kern-.4em\raise.3ex\hbox{$\ssize\Cal A$}%
  177.  \DN@{10}\ifx\next@\pointsize@\kern-.25em\else\kern-.3em\fi
  178.  \lower.4ex\hbox{\DN@{10}\ifx\next@\pointsize@\eightsy\else\sixsy\fi M}%
  179.  \kern-.1em{$\Cal S$}-\TeX}
  180.  
  181. \def\windex@{\ifindexing@
  182.  \expandafter\unmacro@\meaning\stari@\unmacro@
  183.  \edef\macdef@{\string"\macdef@\string"}%
  184.  \edef\next@{\write\ndx@{\macdef@}}\next@
  185.  \write\ndx@{{\number\pageno}{\page@N}{\page@P}{\page@Q}}%
  186.  \fi
  187.  \ifindexproofing@
  188.   \ifx\stariii@\empty\else
  189.    \expandafter\unmacro@\meaning\stariii@\unmacro@\fi
  190.   \insert\margin@{\hbox{\eightpoint
  191.   \vrule\height7\p@\depth3\p@\width\z@\starii@
  192.   \ifx\stariii@\empty\else\tt\macdef@\fi}}\fi}
  193.  
  194. \newcount\toclevel@
  195. \toclevel@=3
  196. \def\toclevel#1{\toclevel@#1\relax}
  197.  
  198. \def\HLtoc@{%
  199.  \iftoc@
  200.   \ifnum\toclevel@<\@ne\else
  201.    {\noexpands@\let\style\relax
  202.    \edef\next@{\write\toc@{%
  203.    \noexpand\noexpand\expandafter\noexpand\HLname@
  204.    {\expandafter\noexpand\csname HL@W\HLlevel@\endcsname}{\QorThelabel@@@@}}}%
  205.    \next@}%
  206.    \expandafter\unmacro@\meaning\entry@\unmacro@
  207.    \Sixtoc@
  208.    \write\toc@{\noexpand\Page{\number\pageno}{\page@N}%
  209.     {\page@P}{\page@Q}^^J}%
  210.   \fi
  211.  \fi}
  212.  
  213. \def\hltoc@{%
  214.  \iftoc@ 
  215.   \ifnum\hllevel@<\toclevel@
  216.    {\noexpands@\let\style\relax
  217.    \edef\next@{\write\toc@{%
  218.     \ifnopunct@\noexpand\noexpand\noexpand\nopunct\fi
  219.     \ifnospace@\noexpand\noexpand\noexpand\nospace\fi
  220.     \noexpand\noexpand\expandafter\noexpand\hlname@
  221.    {\expandafter\noexpand\csname hl@W\hllevel@\endcsname}{\QorThelabel@@@@}}}%
  222.    \next@}%
  223.    \expandafter\unmacro@\meaning\entry@\unmacro@
  224.    \Sixtoc@
  225.    \write\toc@{\noexpand\Page{\number\pageno}{\page@N}%
  226.    {\page@P}{\page@Q}^^J}%
  227.   \fi
  228.  \fi}
  229.  
  230. \newif\ifflush@
  231. \def\FlushedFigs{\global\flush@true}
  232. \def\NoFlushedFigs{\global\flush@false}
  233.  
  234. \newif\ifSflush@
  235.  
  236. \def\flush@{\par\vfill\break\null\kern-\topskip\nobreak
  237.  \global\Sflush@true\vfill
  238.  \supereject}
  239.  
  240.  
  241. \font\BF=cmbx10 scaled \magstep3
  242.  
  243. \expandafter\newcount\csname HL@C0\endcsname
  244. \csname HL@C0\endcsname\z@
  245. \expandafter\def\csname HL@S0\endcsname#1{#1\/}
  246. \expandafter\let\csname HL@N0\endcsname\Roman
  247. \expandafter\let\csname HL@P0\endcsname\empty
  248. \expandafter\let\csname HL@Q0\endcsname\empty
  249. \expandafter\def\csname HL@F0\endcsname{\BF}
  250. \expandafter\def\csname HL@W0\endcsname{Part}
  251.  
  252. \def\notocwrite@#1#2#3{\iftoc@\test@true\else\test@false\fi
  253.  \toc@false#1{#2}#3\iftest@\toc@true\fi}
  254.  
  255. \notocwrite@\NameHL0\part
  256.  
  257. \newif\ifpart@
  258.  
  259. \expandafter\def\csname HL@0\endcsname#1\endHL{\flush@
  260.  \global\part@true
  261.  \ifodd\pageno\else\advancepageno\fi
  262.  {\locallabel@
  263.   \global\setbox\@ne\vbox{\Let@\baselineskip21\p@
  264.   \halign{\BF\ignorespaces##\unskip\hfil\cr 
  265.   \test@false
  266.   \expandafter\ifx\csname HL@W0\endcsname\empty
  267.    \ifx\thelabel@@\empty\global\let\Next@ T\fi\fi
  268.   \ifx\Next@ T%
  269.   \else
  270.    \expandafter\ifx\csname HL@W0\endcsname\empty\else
  271.    \def\next@{\let\nextii@}\expandafter\next@\csname HL@W0\endcsname
  272.     \uppercase\expandafter{\nextii@}\space\space\fi
  273.    {\HL@@F\thelabel@@}\fi\cr
  274.   \noalign{\ifx\Next@ T\vskip-\baselineskip\else\vskip30pt\fi}%
  275.   \uppercase{\ignorespaces#1}\crcr}}}%
  276.  \def\aftertoc@{\vfill\break\advancepageno\global\part@false}%
  277.  \hrule\height\z@\mark{}\vskip1.25in\unvbox\@ne}
  278.  
  279. \notocwrite@\NameHL1\chapter
  280. \newword\chapter{Chapter}
  281. \newif\iffirstchapterpage@
  282. \newif\ifinsection@
  283.  
  284. \newif\ifrunningchapter@
  285. \newtoks\runningchaptertoks@
  286. \def\runningchapter#1{\global\runningchapter@true\runningchaptertoks@{#1}}
  287.  
  288. \let\thechapter@\relax
  289.  
  290. \expandafter\def\csname HL@1\endcsname#1\endHL{\flush@\global\insection@false
  291.  \ifrunningchapter@\else\runningchaptertoks@{#1}\fi
  292.  \global\runningchapter@false
  293.  {\noexpands@
  294.   \xdef\thechapter@{\ifx\Thepref@\empty\else\Thepref@\null. \fi
  295.   \the\runningchaptertoks@}}%
  296.  \global\firstchapterpage@true
  297.  {\locallabel@
  298.  \global\setbox\@ne\vbox{\Let@\tabskip\hss@
  299.  \halign to\hsize{\bf\hfil\ignorespaces##\unskip\hfil\cr
  300.   \expandafter\ifx\csname HL@W1\endcsname\empty\else
  301.    \csname HL@W1\endcsname\space\fi
  302.   {\HL@@F\ifx\thelabel@@\empty\else\thelabel@@\space\fi}%
  303.   \ignorespaces#1\crcr}}%
  304.  }%
  305.  \unvbox\@ne\mark{}\nobreak\vskip\baselineskip
  306.  %\firstparflush@
  307. }
  308.  
  309. \def\firstflush@{\parindent\z@
  310.  \everypar{\global\parindent10\p@\global\everypar{}}}
  311.  
  312. \footline={\ifpart@\hfil
  313.  \else
  314.   \iffirstchapterpage@\hfil\ninerm\page@S{\page@P\page@N{\number\page@C}%
  315.     \page@Q}\hfil\fi
  316.   \global\firstchapterpage@false
  317.  \fi}
  318.  
  319. \def\advancedimtopins@{%
  320.  \iffirstchapterpage@
  321.  \else
  322.   \advance\dimen@\dimen\topins
  323.   \global\dimen\topins\dimen@
  324.  \fi}
  325.  
  326.  
  327. \newif\ifblankpage@
  328. \newbox\topinsbox@
  329. \newcount\endpenalty@
  330. \endpenalty@=-'10000000000
  331.  
  332. \def\plainoutput{%
  333.  \test@false 
  334.   \ifflush@\test@true
  335.   \else\ifSflush@\global\Sflush@false
  336.    \ifnum\insertpenalties=\z@\test@true\fi
  337.   \fi\fi 
  338.  \iftest@
  339.   \test@false
  340.   \ifvoid\footins
  341.    \ifvoid\topins\test@true\else\ifdim\ht\topins=\z@\test@true\fi\fi
  342.   \fi
  343.   \iftest@
  344.    \setbox\z@\vbox{\unvcopy\@cclv\unskip\unpenalty\unkern
  345.     \global\setbox\@ne\lastbox\unskip}%
  346.    \ifdim\ht\z@=\z@\ifdim\ht\@ne=\z@\global\advance\pageno\m@ne
  347.    \global\blankpage@true\fi\fi
  348.   \fi
  349.  \fi
  350.  \specialsplit@false\ifvoid\topins\else\ifdim\ht\topins=\z@
  351.   \specialsplit@true\advance\minpagesize-\skip\topins\fi\fi
  352.  \fliptopins@
  353.  \ifblankpage@\setbox\outbox@\pagebody\else
  354.  \setbox\outbox@\vbox{\makeheadline\pagebody\makefootline}\fi
  355.  {\noexpands@\let\style\relax
  356.   \ifblankpage@
  357.    \ifnum\outputpenalty=\endpenalty@
  358.     \shipout\vbox{\hrule\width\p@\height\z@\box\topins}%
  359.    \fi
  360.   \global\blankpage@false
  361.   \else
  362.   \shipout@\box\outbox@\fi}%
  363.  \advancepageno
  364.  \resetdimtopins@
  365.  \ifvoid\@cclv\else\unvbox\@cclv\penalty\outputpenalty\fi
  366.  \ifnum\outputpenalty>-\@MM\else\dosupereject\fi}
  367.  
  368. \def\blankpage{\null\null\vfill\break}
  369.  
  370. \def\appendices{%
  371.  \NameHL1\appendix
  372.  \Reset\appendix1%
  373.  \newnumstyle\appendix\Alph
  374.  \newword\appendix{Appendix}% 
  375. }
  376.  
  377. \notocwrite@\Namehl1\section
  378. \newstyle\section#1{#1\null.}
  379.  
  380. \newif\ifrunningsection@
  381. \newtoks\runningsectiontoks@
  382. \def\runningsection#1{\global\runningsection@true\runningsectiontoks@{#1}}
  383.  
  384. \expandafter\def\csname hl@1\endcsname#1{\global\insection@true
  385.  \medbreak
  386.  \ifrunningsection@\else\runningsectiontoks@{#1}\fi
  387.  \global\runningsection@false
  388.  \noindent@@
  389.  {\noexpands@
  390.   \edef\next@{\toks@{\ifx\Thepref@\empty\else\Thepref@\null. \fi
  391.   \the\runningsectiontoks@}}\next@
  392.  \mark{\the\toks@}}%
  393.  {\locallabel@
  394.  {\hl@@F\ifx\thelabel@@\empty\else\thelabel@@\space\fi}\bf
  395.  \ignorespaces#1\unskip\punct@{\null.}}%
  396.  \par\nobreak\smallskip}
  397.  
  398. \def\BotOrChap@#1\BotOrChap@{\DN@{#1}\ifx\next@\empty
  399.  \thechapter@\else\ignorespaces#1\unskip\fi}
  400.  
  401. \headline={\unlabel@\noset@
  402.  \def\\{\unskip\space\ignorespaces}%
  403.  \ifpart@\hfil\else\iffirstchapterpage@\hfil\else
  404.   \ifodd\pageno
  405.    \hfil
  406.    \smc\expandafter\BotOrChap@\botmark\BotOrChap@
  407.    \hfil
  408.    \llap{\tenpoint\folio}%
  409.   \else
  410.    \rlap{\tenpoint\folio}%
  411.    \hfil\smc\thechapter@
  412.    \hfil
  413.   \fi
  414.  \fi\fi}
  415.  
  416. \expandafter\newcount\csname hl@C2\endcsname
  417. \csname hl@C2\endcsname\z@
  418. \expandafter\def\csname hl@S2\endcsname#1{#1\null.}
  419. \expandafter\let\csname hl@N2\endcsname\arabic
  420. \expandafter\def\csname hl@P2\endcsname{}
  421. \expandafter\def\csname hl@Q2\endcsname{}
  422. \expandafter\def\csname hl@F2\endcsname{\bf}
  423. \expandafter\let\csname hl@W2\endcsname\empty
  424.  
  425. \notocwrite@\Namehl2\subsection
  426.  
  427. \expandafter\def\csname hl@2\endcsname#1{%
  428.  \ifinsection@
  429.   \smallbreak
  430.   \noindent@@
  431.   {\locallabel@
  432.    {\hl@@F\ifx\thelabel@@\empty\else\thelabel@@\space\fi}\bf
  433.    \ignorespaces#1\unskip\punct@{\null.}\addspace@\enspace}%
  434.  \else
  435.   \Err@{\string\subsection\space not in a \string\section}%
  436.  \fi}
  437.  
  438. \expandafter\newcount\csname hl@C3\endcsname
  439. \csname hl@C3\endcsname\z@
  440. \expandafter\def\csname hl@S3\endcsname#1{#1}
  441. \expandafter\let\csname hl@N3\endcsname\arabic
  442. \expandafter\let\csname hl@P3\endcsname\empty
  443. \expandafter\let\csname hl@Q3\endcsname\empty
  444. \expandafter\let\csname hl@F3\endcsname\empty
  445. \expandafter\let\csname hl@W3\endcsname\empty
  446.  
  447. \notocwrite@\Namehl3\topic
  448.  
  449. \expandafter\def\csname hl@3\endcsname#1{%
  450.   \smallbreak
  451.   \noindent@@
  452.   {\locallabel@
  453.    \bf\ignorespaces#1\unskip\punct@{\null.}\addspace@\enspace}}
  454.  
  455. \expandafter\newcount\csname hl@C4\endcsname
  456. \csname hl@C4\endcsname\z@
  457. \expandafter\def\csname hl@S4\endcsname#1{#1}
  458. \expandafter\let\csname hl@N4\endcsname\arabic
  459. \expandafter\let\csname hl@P4\endcsname\empty
  460. \expandafter\let\csname hl@Q4\endcsname\empty
  461. \expandafter\let\csname hl@F4\endcsname\empty
  462. \expandafter\let\csname hl@W4\endcsname\empty
  463.  
  464. \notocwrite@\Namehl4\subtopic
  465.  
  466. \expandafter\def\csname hl@4\endcsname#1{%
  467.  \smallbreak
  468.  {\locallabel@\bf\ignorespaces#1\unskip
  469.  \punct@{\null.}\addspace@\enspace}}
  470.  
  471. \expandafter\def\csname HL@I1\endcsname{\Reset\hl11%
  472.  \Reset\tag1\Reset\claim1\Reset\Figure1\Reset\Table1%
  473.  \ifx\pref\empty\newpre\section{}\def\tag@P{}\def\claim@P{}\def\island@P{}%
  474.  \else
  475.   \newpre\section{\pref.}\edef\tag@P{\pref.}\edef\claim@P{\pref.}%
  476.   \edef\island@P{\pref.}%
  477.  \fi
  478. }
  479. \expandafter\def\csname hl@I1\endcsname{\Reset\hl21%
  480.  \newpre\hl2{\ifx\pref\empty\else\pref.\fi}}
  481. \expandafter\def\csname hl@I2\endcsname{\Reset\hl31}
  482. \expandafter\def\csname hl@I3\endcsname{\Reset\hl41}
  483.  
  484. \def\vfootnote@#1{\insert\footins
  485.  \bgroup
  486.  \floatingpenalty\@MM\interlinepenalty\interfootnotelinepenalty
  487.  \leftskip\z@\rightskip\z@\spaceskip\z@\xspaceskip\z@
  488.  \eightpoint
  489.  \splittopskip\ht\strutbox\splitmaxdepth\dp\strutbox
  490.  \locallabel@\noindent@@{\foottext@F#1}\,\modifyfootnote@
  491.  \strut\FN@\fo@t}
  492.  
  493. \def\UseBibTeX{\immediate\openout\auxwrite@=\jobname.aux 
  494.  \let\cite\BTcite@
  495.  \def\nocite##1{\immediate\write\auxwrite@{\string\citation{##1}}}%
  496.  \def\bibliographystyle##1{\immediate\write\auxwrite@{\string
  497.   \bibstyle{##1}}}%
  498.  \def\bibliography##1{\immediate\write\auxwrite@{\string\bibdata{##1}}}}
  499.  
  500. \def\alloc@#1#2#3#4#5{\global\advance\count1#1by\@ne
  501.  \ch@ck#1#4#2\allocationnumber=\count1#1
  502.  \global#3#5=\allocationnumber
  503.  \wlog{\string#5=\string#2\the\allocationnumber}}
  504.  
  505. \catcode`\@=13
  506.